﻿// using System.Net;
// using System.Net.Sockets;
// using System.Text;
//
// const string ip = "127.0.0.1";
// const int port = 9000;
// const int bufSize = 1024 * 4;
//
// // 创建Socket对象, 并绑定&监听
// var listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// listener.Bind(new IPEndPoint(IPAddress.Parse(ip), port));
// listener.Listen(10);
// Console.WriteLine($"服务已启动: {ip}:{port}");
//
// while (true)
// {
//     var socket = listener.Accept();
//     Console.WriteLine($"客户端上线: {socket.RemoteEndPoint}");
//     SocketHandler(socket);
// }
//
// void SocketHandler(Socket socket)
// {
//     var buffer = new byte[bufSize];
//     while (true)
//     {
//         try
//         {
//             var count = socket.Receive(buffer);
//             if (count == 0) { break; }
//
//             // 消息: 消息ID、消息类型、数类长度、内容
//             var msgId = BitConverter.ToUInt16(buffer, 0);
//             var msgType = BitConverter.ToUInt16(buffer, 2);
//             var length = BitConverter.ToInt32(buffer, 4);
//             var content = Encoding.UTF8.GetString(buffer, 8, length);
//             Console.WriteLine($"收到消息: ID={msgId}, Type={msgType}, Length={length}, Content=\"{content}\"");
//             
//             // 回复消息
//             var reply = $"I received \"{content}\"";
//             socket.Send(Encoding.UTF8.GetBytes(reply));
//         }
//         catch (Exception ex)
//         {
//             Console.WriteLine(ex.Message);
//             break;
//         }
//     }
//
//     Console.WriteLine($"客户端下线: {socket.RemoteEndPoint}");
//     socket.Close();
// }

